// async await 出来
// 没有抛弃promise ，抛弃烦人的thenable 链条
function sleep(time) {
    // 耗时任务，封装在 Promise内部 resolve
    return new Promise((resolve) => {
        // console.log('999')
        setTimeout(resolve, time)
    })
}
// es7 函数的修饰符 说明是async函数  异步
(async function() {
    // 函数内部的异步任务，如果是用promise来封装的，可以实现同步化效果
    console.log('Do some thing' + new Date())
    // await 右边的返回值是promise 实例
    await sleep(3000) // async 与 await 是一起的
    console.log(await sleep(3000))
    console.log('Do some thing' + new Date())
})();

// sleep(2000)